// 共享类型定义 - 前后端通用
// 这个文件可以被前端和后端同时引用

/**
 * 分页请求参数
 */
export interface PaginationParams {
  page?: number;
  pageSize?: number;
}

/**
 * 分页响应数据
 */
export interface PaginationResponse {
  current: number;    // 当前页码
  pageSize: number;   // 每页大小
  total: number;      // 总记录数
  totalPages: number; // 总页数
}

/**
 * 通用API响应格式
 */
export interface ApiResponse<T = any> {
  success: boolean;
  data?: T;
  message?: string;
  error?: string;
}

/**
 * 带分页的列表响应
 */
export interface PaginatedResponse<T> {
  items: T[];
  pagination: PaginationResponse;
}

/**
 * 消息筛选参数
 */
export interface MessageFilters extends PaginationParams {
  roomId?: string;
  messageType?: string;
  userId?: string;
  startDate?: string;
  endDate?: string;
}

/**
 * 消息列表响应
 */
export interface MessagesResponse {
  messages: any[]; // 这里可以替换为具体的Message类型
  pagination: PaginationResponse;
}